//加载模块
layui.use(function(){ //亦可加载特定模块：layui.use(['layer', 'laydate', function(){
    //得到各种内置组件
    var layer = layui.layer //弹层
        ,laypage = layui.laypage //分页
        ,laydate = layui.laydate //日期
        ,table = layui.table //表格
        ,$=layui.jquery//$.ajax()

    //向世界问个好
    layer.msg('欢迎进入课程列表');

    //执行一个 table 实例
    table.render({
        elem: '#course'
        ,height: 580
        ,url: '/cour/findByPage' //数据接口
        ,title: '课程表'
        ,page: true //开启分页
        ,toolbar:'default' //开启工具栏，此处显示默认图标，可以自定义模板，详见文档
        ,totalRow: true //开启合计行
        ,cols: [[ //表头
            {type: 'checkbox', fixed: 'left'}
            ,{field: 'cid', align:'center', title: '课程编号',width:250}
            ,{field: 'cname', align:'center', title: '课程名',width:120,templet:function (d) {
                    if (d.cname!=null&&d.cname!=''){
                        return "《"+d.cname+"》"
                    }
                },edit:'text'}
            ,{field: 'tea_name',  align:'center',title: '任课教师',width:300,templet:function(d){
                var tea_name = [];
                for (var i = 0;i<d.tpojo.length;i++){
                    tea_name.push(d.tpojo[i].tname);
                }
                return tea_name;
    },edit:'text'}
            ,{field:'cmajor',align:'center',title:'课程所属专业',width:250,edit:'text'}
            ,{fixed: 'right', align:'center', toolbar: '#barDemo',width:250}
        ]]
    });


    //监听头工具栏事件
    table.on('toolbar(artist)', function(obj){
        var checkStatus = table.checkStatus(obj.config.id)
            ,data = checkStatus.data; //获取选中的数据
        switch(obj.event){
            case 'add':
                layer.open({
                    type:2,
                    content:'add_artist.html',
                    area:['30%','80%']
                })
                layer.msg('添加');
                break;
            case 'update':
                if(data.length === 0){
                    layer.msg('请选择一行');
                } else if(data.length > 1){
                    layer.msg('只能同时编辑一个');
                } else {
                    layer.alert('编辑 [id]：'+ checkStatus.data[0].id);
                }
                break;
            case 'delete':
                if(data.length === 0){
                    layer.msg('请选择一行');
                } else {
                    //根据id删除一行数据
                    //首先定义一个空数组来存储id
                    var idList =[];
                    for (var i =0 ;i<data.length;i++){
                        idList.push(data[i].aId);
                    }
                    $.ajax({
                        url:'artist/delete',
                        type:'post',
                        data:{
                            aId:idList
                        },
                        traditional:true,
                        success:function (res) {
                            //返回数据
                            layer.msg(res.msg,{
                                time:1000 //一秒后执行以下操作
                            },function () {
                                //当前页面刷新
                                window.location.reload()
                            })
                        }
                    })
                }
                break;
        };
    });

    //触发编辑事件
    table.on('edit(artist)', function(obj){ //注：edit是固定事件名，test是table原始容器的属性 lay-filter="对应的值"
        if (obj.value!=null && obj.value!='') {
            $.ajax({
                url:'artist/edit',
                type:'post',
                traditional:true,//此行代表传递数组，如果没有向后端传递数组，则可以去掉
                data:{
                    value:obj.value,//对象内容
                    aIds:obj.data.aId//对象id
                },
                success:function (res) {
                    layer.msg(res.msg);
                }
            })
        }else {
            layer.msg("歌手名字不能为空哦",{
                time:1000//设置刷新表格的时间
            },function () {
                window.location.reload();//刷新当前表格
            })
        }
    });
    //行工具条事件
    table.on('tool(artist)', function(obj){ //注：tool 是工具条事件名，test 是 table 原始容器的属性 lay-filter="对应的值"
        var data = obj.data; //获得当前行数据
        var layEvent = obj.event; //获得 lay-event 对应的值（也可以是表头的 event 参数对应的值）
        var tr = obj.tr; //获得当前行 tr 的 DOM 对象（如果有的话）

        if(layEvent === 'detail'){ //查看
            //携带数据跳转即可
            window.location.href="artist/select?aId="+obj.data.aId;
        } else if(layEvent === 'del'){ //删除
            layer.confirm('真的删除行么', function(index){
                $.ajax({
                    url:'artist/deleteOne'
                    ,type:'post'
                    ,data:{
                        aIds:obj.data.aId//获取当前行的ID
                    }
                    ,success:function (res) {
                        layer.msg(res.msg);//返回数据
                    }
                })
                obj.del(); //删除对应行（tr）的DOM结构，并更新缓存
                layer.close(index);
                //向服务端发送删除指令
            });
            console.log(obj.data.alId);
        } else if(layEvent === 'edit'){ //编辑

        } else if(layEvent === 'LAYTABLE_TIPS'){
            layer.alert('Hi，头部工具栏扩展的右侧图标。');
        }
    });
});